AOCE Editorial
Volume Number: 10
Issue Number: 2
Column Tag: The Editor's Page
AOCE Ä
The next great Macintosh Advantage?
By Neil Ticktin, Editor-in-Chief
AOCE The next great Macintosh Advantage?
When the Macintosh came out in 1984, people began to realize that computers
were supposed to make one’s life easier. Ordinary people started to use a computer to
improve the speed and more importantly, the quality of that work. But the computer
revolution has left a bit to be desired - you have to work too hard to make the computer
do what you want it to do.
We all know that Apple (and other vendors) need to come up with completely new
ways to use computers something that will inevitably take massive amounts of
processing power. While we are waiting for this to happen, Apple is trying to make
headway in making Macintosh a more productive computer.
Today’s user interfaces with cut/copy/paste and other inter application
communication schemes force the user to be the “glue” between systems, applications,
people and projects. AOCE™ is meant to change that - the driving principle behind this
technology is seamlessness. Many of those things that you’ve said to yourself “the
computer should be able to do this” are now actually done by the computer! This gives
both large and small business the chance to come up with reasonable solutions.
What is this AOCEstuff?
First, AOCEstands for Apple Open Collaboration Environment. The technology
extends the operating system to provide a platform for the integration of
communications, directories, and agents into the Macintosh user experience. AOCE
includes a number security capabilities such as digital signatures, authentication and
encryption. These technologies allow developers to create secure communications as
well as the foundation for new paperless workflow applications to be built on.
From a user’s perspective, AOCE’s functionality will be most visible through a
system-wide directory or “catalog” services, with a standard browser and electronic
business cards; a compound mailbox for mail from all sources (fax, voice mail,
e-mail, pager, etc.); integration of telephony and desktop video conferencing; and
application integration, with all applications having the ability to send documents.
We’re going to take a look at the AOCE technologies and architecture. Much of the
below information is taken from Apple’s AOCE Data Sheet.
Developer Opportunities
AOCE provides a rich set of services for collaboration that can be easily
incorporated into your application. By providing a single API, developers will be able
to concentrate on their applications, not the technologies. And because it is at the
system level, a standard is created for all applications to use. That’s the good news. The
bad news is that in the pursuit of providing tools for everyone, the AOCE API is large
(the running joke is that Apple has doubled the Macintosh API). To be fair, there’s a
lot of things that you can do with AOCE and that inevitably raises the needed number of
calls.
There are a number of things that you should think about doing in your
applications to support AOCE. The more support there is, the better the seamlessness
there will be. Here’s some of the things you should think about doing.
Make your Application “Mail Capable”
AOCE allows you to make your application “Mail Capable” by incorporating the
new “Mailer” user interface provided by the Standard Mail Package. Users will then
be able to effortlessly send documents by fax or other electronic mail transports
directly from your application. Recipients can review the documents which appear in
their compound mailbox using your application. [There’s an article dedicated to this
topic later in the issue.]
Utilize Store and Forward Messaging
AOCE InterProgram Messaging (IPM) extends the inter- application
communications (IAC) capability of System 7. For example, an “AOCE Savvy”
application could allow users to fill out a form requesting information on a particular
subject and use IPM to send it to a series of library agents on various networks. These
agent applications could search through databases and file servers and mail back
pertinent documents.
Take advantage of Catalog Services
Any application that requires a “user database”, “address book” or some other
repository of information, can utilize the catalog services to store and manage data of
all kinds. By using catalog services, information can be more easily managed and
shared by other applications and other users where appropriate. An “AOCE Savvy”
telephony and video conferencing application would take advantage of catalog services to
store pictures, telephone numbers, connection information and preferences for users.
Users could then exchange AOCE electronic information cards with this information.
Build AOCE Templates
AOCE Templates are a vehicle for extending and customizing the Macintosh
desktop. You can provide AOCE templates to accompany an application which stores
information in catalogs; thereby providing an alternate means of accessing this data.
For example, a collection of PIM templates could create the necessary entries in a
catalog to store such things as pictures, logos, multiple telephone numbers, spouse and
children names, etc.
Allow Users to Sign Data
Digital signatures can be implemented by any application which needs to
positively identify the source of some data and detect whether some part of a document
or record has been tampered with. For example, an accounting application could take
advantage of digital signatures by requiring each entry in the system’s audit trail to
have an associated signature. [There’s an article discussing digital signatures later in
the issue.]
Tie into AOCE Security
AOCE users need only one password to authenticate them to the entire system.
Your product can take advantage of AOCE authentication to simplify security
administration and improve over-all security. Any application which utilizes a
stream-based LAN connection (such as one based on ADSP currently) can take
advantage of ASDSP for encrypted network communication.
Build Service Access Modules
You can develop Message Service Access Modules (MSAMs) and Catalog Service
Access Modules (CSAMs) which allow users and applications to “plug into” specific
messaging systems and catalog services through AOCE. These modules allow AOCE and
applications to adapt to any environment without changing software or modifying the
user experience. [There’s an article discussing the development of MSAMs later in the
issue as well.]
AOCE Architecture
AOCE’s technologies fall into four major categories: Catalogs; Store and Forward
messaging; Authentication and privacy; and Digital signatures. These four major areas
of service can be accessed by any Macintosh application. The data structures and
routines for utilizing any of these services are available to all Macintosh developers.
AOCE Desktop-level services that provide immediate benefits to Macintosh users
by integrating a “compound Mailbox” and a catalog browser directly into the
Macintosh desktop. The AOCE templates facility allows you to extend the browsing
capability of the system.
AOCE Collaboration Packages provide your application with a set of standard user
interface components and access to AOCE’s electronic mail and catalog browsing
facilities.
AOCE Service Access Modules allow plug-and-play access to any underlying
messaging or catalog system. Apple will provide access modules for direct dial-up,
direct AppleTalk and server-based operation. You can develop access modules for fax,
voice mail, existing public, LAN-based and host-based messaging and catalog services
as well as new emerging standards. Through it’s open architecture, AOCE can be adapted
to any user environment while maintaining the overall user experience.
Apple will also provide support for a subset of AOCE functionality through the
Vendor Independent Messaging interface (VIM) which allows portability of messaging
applications across different computer platforms.
Catalog Manager
The Catalog Manager provides a standard, system-wide catalog system which is
scalable from a single stand-alone system to a corporate-wide replicated & distributed
system. It provides routines and data structures for accessing catalogs of any kind,
regardless of content. The Catalog Manager represents all catalogs as hierarchally
accessed object-oriented databases. Catalog Service Access Modules (CSAMs) are used
to actually access the information stored in a given catalog. This makes the
implementation of a given catalog independent of the Catalog Manager.
The contents of AOCE catalogs are not restricted in any way. They could include
records for users, groups, file servers, printers, clip art, and accounting servers, for
example. A particular record for a user could contain attributes including picture,
telephone number, video conference number, internet address, fax address, postal
address, position, signing authority, and manager’s name.
Standard Catalog Package
While the Catalog Manager provides direct access to catalog information, the
Standard Catalog Package provides higher level facilities for consistent user access to
catalogs. Specifically, it includes standard panels for browsing, finding and selecting
catalog records and routines that display dialog boxes for prompting users to
authenticate themselves. Standard Catalog Package routines are used in conjunction
with the Catalog Manager which can be used to fetch or update specified catalog
information.
AOCE Templates
AOCE templates control the way that catalog records and their contents are
displayed on the Macintosh desktop. This extensible user interface allows developers to
provide new capabilities and access to new pieces of catalog information.
Templates can be a simple collection of resources or may involve the development
of code. They determine what records are browsed, what information is visible and how
individual attributes are displayed and edited. Different users can use different
templates to look at the same catalog.
InterProgram Messaging Manager
The InterProgram Messaging (IPM) Manager provides store and forward
delivery of messages between applications. Within the Macintosh IAC architecture, it
compliments the existing InterProcess Communications (IPC) facility which provides
immediate inter-process communication. While IPC requires the destination to be
instantly accessible over a network connection, IPM messages may be sent even though
the source and destination applications are not simultaneously available (the
destination may not be running or may be on completely different network).
IPM allows a message to be sent to multiple destinations over any type of message
transport and there are no content or format restrictions. IPM messages are delivered
via Messaging Service Access Modules (MSAMs) and can therefore be sent to virtually
any destination. Examples include: another computer on a local area network, a
computer accessible over a dial up connection, a fax machine, an address on a mail
system such as MHS™ or PROFS™ or a public messaging network such as AppleLink™
or MCIMail™.
Standard Mail Package
Electronic mail is one use of AOCE messaging. Mail messages are special in that
they are intended for users rather than applications and are distinguished from other
AOCE messages by their message type. The Standard Mail Package provides routines
that allow every application to become “Mail Capable”. Users can send documents as
electronic mail from any application which supports the Standard Mail Package.
The Standard Mail Package provides a standard “Mailer” user interface and other
routines that allow applications to be made “Mail-Capable” in a simple and consistent
fashion. The Mailer allows other documents and whole folders to be enclosed in, and
opened from within, an AOCE letter. Users can also sign letters and verify signatures
using the Mailer user interface.
Authentication Manager & ASDSP
The Authentication Manager provides the tools necessary to verify the identity of
parties communicating with each other and to keep their communications private.
AOCE’s protocols provide two-way authentication. This means that both parties to a
connection are assured of the other’s identity.
AOCE can prevent wiretapping by encrypting network traffic through the use of a
new protocol: the AppleTalk Secure Data Stream Protocol (ASDSP).
Digital Signature Manager
Digital signatures provide a way of signing electronic data, eliminating the need
to print and circulate paper versions. Digital Signatures offer more security than a
paper signature because in addition to positively identifying who has signed some data
it can detect whether data was tampered with after it was signed. A user can sign an
entire document or only certain fields within a document or database record.
For example, developers of electronic forms applications will want to integrate
digital signatures into their products so that users can electronically sign portions of a
form. Signatures could be useful in database and accounting applications or anywhere
that users need to have absolute confidence in the integrity of their data. Since digital
signatures detect changes in files, they could also be used to detect viruses or
implement anti-piracy measures.
While digital signatures do not provide a means of encrypting data, they do rely
upon public key encryption technology to ensure that the signatures are
cryptographically secure.
PowerShare Collaboration Servers
By the time you read this, Apple should be shipping the PowerShare
Collaboration Servers. PowerShare does several things including: consolidated
administration of catalogs, gateways; network security allows for the exchange of
sensitive information; scales to support large number of users; and acts as a platform
for team solutions. There will be more information to come on this product.
So where is this all going?
No doubt about it - implementing AOCE support is a serious task. But, there’s
also no doubt that if lots of applications support the standards (or at least the relevant
ones to those applications), AOCEcan help to give Macintosh an advantage over other
platforms. But, since AOCE has a lot to do with communication and we no longer have
homogenous networks, it is critical that Apple extend the tools to Windows for it to be
of use.
As a developer, the most important thing for you to do first is to add “Mailer
Support” to your application. Once you’ve done this, you should look at the other
technologies and see what makes sense to you. For now, you can get a taste of AOCE
development by looking at the other three articles in this issue.
Neil Tictkin, Editor-in-Chief